package com.lagou.edu.pojo;

import java.lang.reflect.Field;
import java.util.Set;

/**
 * Bean定义
 */
public class BeanDefinition {

    /**
     * ID
     */
    private String id;
    /**
     * Bean类型
     */
    private Class beanClass;
    /**
     * 实现的接口集合
     */
    private Class<?>[] interfaces;
    /**
     * 是否实现接口
     */
    private boolean implementInterface;
    /**
     * 依赖集合
     */
    private Set<Field> dependencies;
    /**
     * 是否需要事务代理
      */
    private boolean transactionProxy;

    public Class getBeanClass() {
        return beanClass;
    }

    public void setBeanClass(Class beanClass) {
        this.beanClass = beanClass;
    }

    public Set<Field> getDependencies() {
        return dependencies;
    }

    public void setDependencies(Set<Field> dependencies) {
        this.dependencies = dependencies;
    }

    public boolean isTransactionProxy() {
        return transactionProxy;
    }

    public void setTransactionProxy(boolean transactionProxy) {
        this.transactionProxy = transactionProxy;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Class<?>[] getInterfaces() {
        return interfaces;
    }

    public void setInterfaces(Class<?>[] interfaces) {
        this.interfaces = interfaces;
    }

    public boolean isImplementInterface() {
        return implementInterface;
    }

    public void setImplementInterface(boolean implementInterface) {
        this.implementInterface = implementInterface;
    }
}
